<?php

  /**
   * RegForm
   *
   * Класс представления для формы авторизации
   */

  class RegForm extends CActiveForm
  {
    /**
     * модель данных
     *
     * @var Record
     */
    public $model = null;

    /**
     * инициализация формы
     *
     * @return void
     * @access public
     */
    public function init()
    {
      if (!$this->action)
        $this->action = $this->controller->app->request->baseUrl."/user/reg";
      if (!isset($this->htmlOptions["id"]))
        $this->htmlOptions["id"] = "user-info";
      parent::init();
    }

    /**
     * создание тега label
     *
     * @param string  $attr        имя атрибута в модели
     * @param mixed[] $htmlOptions атрибуты тега
     * @return string
     * @access public
     */
    public function inputLabel($attr, array $htmlOptions = array())
    {
      if (!isset($htmlOptions["style"]))
        $htmlOptions["style"] = "font-weight:normal;";
      return $this->label($this->model, $attr, $htmlOptions);
    }

    /**
     * создание тега input:hidden
     *
     * @param string  $attr        имя атрибута в модели
     * @param mixed[] $htmlOptions атрибуты тега
     * @return string
     * @access public
     */
    public function inputHidden($attr, array $htmlOptions = array())
    {
      return $this->hiddenField($this->model, $attr, $htmlOptions);
    }

    /**
     * создание тега input:text
     *
     * @param string  $attr        имя атрибута в модели
     * @param mixed[] $htmlOptions атрибуты тега
     * @return string
     * @access public
     */
    public function inputText($attr, array $htmlOptions = array())
    {
      if (!isset($htmlOptions["style"]))
        $htmlOptions["style"] = "width:99%;";
      return $this->textField($this->model, $attr, $htmlOptions);
    }

    /**
     * создание тега input:password
     *
     * @param string  $attr        имя атрибута в модели
     * @param mixed[] $htmlOptions атрибуты тега
     * @return string
     * @access public
     */
    public function inputPassword($attr, array $htmlOptions = array())
    {
      if (!isset($htmlOptions["style"]))
        $htmlOptions["style"] = "width:99%;";
      return $this->passwordField($this->model, $attr, $htmlOptions);
    }

    /**
     * вывод сообщения об ошибке
     *
     * @param string $attr имя атрибута в модели
     * @return string
     * @access public
     */
    public function getError($attr)
    {
      return $this->error($this->model, $attr);
    }
  }

?>
